Виктор Большаков
Настольная книга тимлида разработки ПО
Введение
Зачем вам эта книга
Автор постарался собрать полный набор компетенций Тимлида и раскрыть их для наиболее эффективного применения, указав на достоинства и недостатки существующих подходов. Несмотря на то, что книга ориентирована на повышение профессионального уровня тимлидов команды DatsTeam, она будет полезна и другим специалистам, поскольку в ней собраны лучшие практики и рассматривается полный спектр деятельности роли тимлид.
Основой для написания книги послужили опыт из различных доступных источников и структура компетенций TeamLead Roadmap [https://tlroadmap.io/], за что автор выражает большую благодарность сообществу. Однако мнение автора частично отличается от вышеупомянутых компетенций: для ознакомления читателя с имеющимся мировым опытом и опытом автора, структура функций в книге заполнена практиками и принципами.
Данная книга будет полезна для специалистов в сфере разработки:
— Действующему тимлиду
— Разработчику, планирующему стать тимлидом
— Руководителю групп разработки, CIO, CTO, CDTO
— Руководителю подразделения разработки ПО
Действующий тимлид сможет переосмыслить свои подходы, применить новые и структурировать свою деятельность. Во многом это поможет справиться с текущими проблемами и избежать их появления в будущем.
Разработчику, планирующему стать тимлидом, книга даст понимание о функциях этой профессии, так как зачастую разработчики не видят полноты деятельности тимлида. Руководители, стоящие выше, в свою очередь, не видят нужного потенциала по организационным и личностным качествам в разработчике на эту должность. Когда же неподготовленный разработчик получает желаемую роль, он сталкивается с новым типом задач, которые из-за отсутствия знаний и опыта в этой сфере, приводят к проблемам.
Руководителю групп разработки, CIO, CTO, CDTO эта книга позволит задать стандарты работы в организации, провести повышение квалификации тимлидов, оценить их квалификацию по компетенциям и даже написать требования к вакансии тимлида или должностной инструкции.
Руководителю подразделения разработки ПО, такому как Системного администрирования, Контроля качества, Проектного офиса и др., книга раскрывает функции управления командой.
Книга бесплатная и свободно распространяется в электронном виде. При цитировании необходимо указывать название книги и автора.
О роли
Тимлид [Team Leader] — роль лидера команды разработки, которая включает в себя организацию эффективной работы команды и обеспечивает ее максимальную ценность для организации.
Определение в wikipedia [https://en.wikipedia.org/wiki/Team leader] звучит иначе, но отражает ту же самую суть.
В каждой организации свой набор ролей и распределение функций между ними. Для определения роли за основу берутся методологии, лучшие практики, книги, а также опыт сотрудников.
Разделение труда в организациях очень разнообразное. В крупных компаниях разделение труда более детализировано — поле деятельности тимлида сужается, что повышает эффективность выполнения оставшихся в его зоне ответственности функций. Например, в некоторых организациях есть роль Владельца продукта [Product Owner], что позволяет тимлиду в меньшей степени заниматься проектированием функционала систем. Предположим, в другой части компаний есть роль Руководителя проектов [Project Manager], которая снимает с тимлида функции построения планов и контроля выполнения этих планов. В небольших стартапах роль тимлида может включать в себя функции Владельца продукта [Product Owner], Руководителя проекта [Project Manager], Релиз-инженера [Release Engeneer], ИТ директора [CIO]. Технического директора [СТО] и др.
В концепции само-организованных команд не существует такой роли, как тимлид. Такие команды формируются из само-мотивированных сотрудников, распределяющих между собой ответственность за максимизацию результатов. При реализации такой концепции необходимо учитывать, что амбиции лидера хотя бы одного из членов команды будут значительно мешать достижению целей. А появление неформального лидера и вовсе может свести к минимуму пользу от реализации концепции.
Команда — группа людей, работающих совместно для достижения определенных целей. В более широком смысле у лидера может быть достаточно большая команда. Но именно под ролью тимлида подразумевается управление командой, работающей по единому процессу (в том числе единому технологическому циклу), с единым планированием и единым пулом задач.
Карта компетенций
Компетентность — способность (знания и опыт), позволяющая эффективно выполнять определенный класс профессиональных задач.
Тимлид это роль, требующая компетентности в решении определенных задач.
Последующие главы книги будут подробно раскрывать особенности каждой компетенции тимлида, практики и принципы которых необходимо придерживаться.
Контекст деятельности
Тимлид осуществляет свою деятельность в определенных обстоятельствах, которые определяют подходы, инструменты и цели.
Факторы, влияющие на деятельность тимлида:
— Организация, в рамках которой работает команда:
— Роли и конкретные сотрудники на тех или иных должностях
— Регламенты, политики и правила организации в части:
— работы с сотрудниками
— реализации процессов разработки
— формата общения между командами/подразделениями
— общие требования к программным продуктам
— Ресурсы для мотивации сотрудников
— Доступные тимлиду и команде инструменты для достижения целей
— Корпоративная культура
— Команда
— Программный продукт или продукты, над которыми работает команда
— Качество постановки задач, формализации целей входящей информации
— История формирования организации и команды, продуктов, процессов и инструментов разработки
Каждый фактор оказывает значительное влияние и его необходимо учитывать при организации работы команды.
Например, создание микроклимата команды, конфликтующего с корпоративной культурой, будет фактором возмущения для других сотрудников и руководства организации. Другая ситуация — авторитарный стиль управления тимлида будет постоянно ставиться под сомнение руководством организации с демократическим стилем управления.
При трудоустройстве на роль тимлида необходимо оценивать соответствие ваших предпочтений и существующее положение этих факторов в организации. Достаточно часто между тимлидами возникают споры об эффективности тех или иных практик без учета этих внешних факторов. Эти споры возникают не только между тимлидами разных организаций, но и даже между тимлидами в одной организации.
Управление сотрудниками
Найм
Перед тем как раскрыть тему найма новых сотрудников, приведу напутствующие слова Мариэтты Парсекян (HR директора компании DatsTeam) тимлидам своей компании:
Главное, что надо понимать. Рекрутинг в ИТ это работа команды, это диалог, взаимодействие и эффективная обратная связь в процессе найма. Залог успешных плейсментов — это понимание, что у нас одна задача, мы в одной лодке, быстрое реагирование на изменения рынка, быстрая обратная связь и отсутствия нагромождений в виде большого числа интервью и тестов.
Рынок высококонкурентный в ИТ и наше предложение должно выгодно отличаться, а тимлид — это лицо нашей разработки. Надо обязательно помнить об этом, даже при отказе кандидату. С вами ассоциируется культура нашей разработки. С нашей культурой рекрутинга ассоциируется культура нашей разработки. Любой кандидат, который поговорил с вами будет нести в сообщества свое мнение о нас и растить наш DevRel, даже если